// pages/login/login.js
import {
    myWifiData,
    commitEditWifiData,
    commitDelWifiData
} from "../../utils/api"
import utils from "../../utils/util"


// 在页面中定义插屏广告
let interstitialAd = null
let flag = true;
Page({

    /**
     * 页面的初始数据
     */
    data: {
        bannerAdId1: "adunit-d1e9554377dcb555",
        chapAdId: "adunit-d1829b297ab0c444",
        noMch: false,
        editshow: false,
        wifisData: {},
        editWifi: {
            wifi_ssid: '',
            wifi_passwd: ''
        },
        nowMoney: 0,
        totalMoney: 0,
        isEdit: false,
        noData: false,
        logo: "", //小程序的logo
        scenedata: "", //pc扫码登录的参数
        openid: "", //用户pc端扫码时判断小程序是否登录
        logindata: true //PC端扫码登录的页面展示
    },


    /**
     * 生命周期函数--监听页面加载
     */
    async onLoad(options) {
        // 在页面onLoad回调事件中创建插屏广告实例
        if (wx.createInterstitialAd) {
            interstitialAd = wx.createInterstitialAd({
                adUnitId: this.data.chapAdId
            })
            interstitialAd.onLoad(() => {})
            interstitialAd.onError((err) => {})
            interstitialAd.onClose(() => {})
        }
        // 在适合的场景显示插屏广告
        if (interstitialAd) {
            setTimeout(() => {
                interstitialAd.show().catch((err) => {
                    console.log(err)
                })
            }, 500)
        }
        utils.showLoading("数据加载中")
        this.setData({
            logo: __wxConfig.accountInfo.icon,
            openid: wx.getStorageSync('openid')
        })
        
        if (wx.getStorageSync('openid') == '') {
            wx.hideLoading({})
            wx.navigateTo({
                url: '/pages/login/login',
            })
            return false;
        }
        this.getMyWifiList();
    },
    async getMyWifiList() {
        const myWifi = await myWifiData()
        const myWifiResData = myWifi.data

        if (myWifiResData.code == '200') {
            this.setData({
                wifisData: myWifiResData.data.wifis,
                nowMoney: myWifiResData.data.now_money,
                totalMoney: myWifiResData.data.total_money
            })
            wx.hideLoading({})
        } else if (myWifiResData.code == 403) {
            wx.hideLoading({})
            this.setData({
                noMch: true
            })
        } else if (myWifiResData.code == '300') {
            wx.hideLoading({})
            utils.wxshowtoast(myWifiResData.msg);
            setTimeout(() => {
                wx.navigateTo({
                    url: '/pages/index/index',
                })
            }, 2000);
        } else {
            wx.hideLoading({})
            this.setData({
                noData: true
            })
        }
    },
    // wifi 海报页面详情页
    detail(e) {
        wx.navigateTo({
            url: "/pages/wifiShow/wifiShow?qrcode=" + e.currentTarget.dataset.qrcode
        })
    },
    onClose() {
        this.setData({
            editshow: false
        });
    },
    addWifiQrcode() {
        this.setData({
            editshow: true,
            editWifi: {
                "id": '',
                "wifi_ssid": '',
                "wifi_passwd": ''
            },
            isEdit: false
        })
    },
    editWifiQrcode(e) {
        this.setData({
            editshow: true,
            editWifi: {
                "id": e.currentTarget.dataset.id,
                "wifi_ssid": e.currentTarget.dataset.ssid,
                "wifi_passwd": e.currentTarget.dataset.pass
            },
            isEdit: true
        })
    },
    // ssid验证
    inputssid(e) {
        this.data.editWifi.wifi_ssid = e.detail.value
        this.setData({
            editWifi: this.data.editWifi
        })
    },
    // 密码验证
    inputpass(e) {
        this.data.editWifi.wifi_passwd = e.detail.value
        this.setData({
            editWifi: this.data.editWifi
        })
    },

    // 修改wifi提交
    async commitBtn() {
        if (flag) {
            flag = false;
            if (this.data.editWifi.wifi_passwd.length < 8) {
                setTimeout(function () {
                    flag = true;
                }, 1000)
                utils.wxshowtoast("密码最小位数为8，请输入超过8位数密码")
            } else {

                wx.showLoading({
                    title: '提交数据中',
                })
                const res = await commitEditWifiData(this.data.editWifi)
                if (res.data.code == 200) {
                    setTimeout(function () {
                        flag = true;
                    }, 1000)
                    wx.hideLoading()
                    utils.wxshowtoast(res.data.msg)
                    this.setData({
                        editshow: false
                    });
                    this.getMyWifiList();
                } else {
                    setTimeout(function () {
                        flag = true;
                    }, 1000)
                    wx.hideLoading()
                    utils.wxshowtoast(res.data.msg)
                }
            }
        }


    },
    // 修改wifi提交
    async commitDelBtn() {
        if (flag) {
            wx.showLoading({
                title: '删除中',
            })
            const res = await commitDelWifiData(this.data.editWifi)
            if (res.data.code == 200) {
                
                wx.hideLoading()
                utils.wxshowtoast(res.data.msg)
                this.setData({
                    editshow: false
                });
                this.getMyWifiList();
                setTimeout(function () {
                    flag = true;
                }, 1000)
            } else {
                setTimeout(function () {
                    flag = true;
                }, 1000)
                wx.hideLoading()
                utils.wxshowtoast(res.data.msg)
            }
        }

    },
    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage() {

    }
})